┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃              テキスト文字読み取りツール                                    ┃
┃                      「GMOJI」                                        ┃
┃                        V1.4                                            ┃
┃               Copyright (C) 1997-98,2000 by AIG-Soft                       ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      これは何?                                                            ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

GMOJIはテキスト画面の文字を読みとってキー入力として返すツールです。

エディター内でのコピー&ペーストや、画面上の文字を読みとってエディターなどに
入れたりすることもできるでしょう。ファイルビューワー内での文字列検索時に
その文字列をファイル中から読み出す場合にも有用です。ASKの再変換にも使えます。

また、全画面一気ファイル書き出し機能により、表示されているテキスト画面イメージを、
ほぼそのままファイル化することも出来ます。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      組み込み法                                                            ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

GMOJIはコマンドラインからの起動で常駐します。
常駐サイズは約1.5Kバイトです。

GMD/KSDが常駐していない状態では常駐出来ませんので、必ずそれらを先に
常駐してください。

        GMOJI [/R]

        「例」GMOJI

CONFIG.SYSのPROGRAM=での組み込みも可能です(DEVICE=は不可)。
        「例」PROGRAM = A:¥SYS¥GMOJI.X

組み込み時にはIOCS.X(互換)が必要です。ただしX68030では不要です。
HIOCS.Xならちょっと「良い」です。

        HIOCS.X         V1.10+16        SHARP/Y.Nakamura
        HIOCS-plus      V16.13          SHARP/Y.Nakamura/立花えり子

GMOJIはその文字読み取りを全面的にテキスト文字読み取りドライバーGMDに、
キー処理関係をKSDにそれぞれ依存しています。読み取れる文字の条件などは、
GMD付属の説明書を参照してください。

なお、GMOJI組み込み中はKSDとGMDは常駐ロックがかかり常駐解除
出来ません。それらを常駐解除したい時は、先にGMOJIを解除してから
行ってください。

┌───────────────────────────────────┐
│オプション (-でも/でもOK)                                           │
└───────────────────────────────────┘

/R      常駐を解除します。

GMOJI常駐中はKSD/GMDは常駐解除出来ません。
KSD/GMDを常駐解除したい時は先にGMOJIを常駐解除してください。

┌───────────────────────────────────┐
│組み込み時のエラー                                                    │
└───────────────────────────────────┘

GMOJI組み込み/解除時に発生する可能性の有るエラーは次の通りです。

「すでに常駐しています」
        すでに常駐しているのに、再度組み込もうとしました。

「KSDが組み込まれていません」
        GMOJIを利用するにはKSD V1.7以降が必須です。
        必ず先に常駐させておいてください。

「GMDが組み込まれていません」
        GMOJIを利用するにはGMD V1.2以降が必須です。
        反転文字読み取りにはさらにGMD V1.4以降が必要です。
        必ず先に常駐させておいてください。

「起動キー[Opt.1+TAB]が他のプログラムで使われています」
        KSDの外部起動プログラムとして、GMOJIと同じキーを使ったものが
        すでに常駐されています。そのプログラムを解除するか、
        GMOJIの起動キーをソースを書き替えて変更してください(^_^;)。

「常駐していません」
        GMOJIは組み込まれていません。従って解除もできません。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      使い方                                                               ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

このツールは、KSDが有効な状態でのみ起動可能です。
恐らくは、キー入力が可能な多くの場面で利用可能だと思われます。

文字読み条件はGMDのそれと同じです。

┌───────────────────────────────────┐
│読みとり手順(1文字単位;基本)                                      │
└───────────────────────────────────┘

まずOpt.1+TABで起動します。

カーソルを移動させ、スペースで読み取ります(くわしいキー操作は後述)。
元にカーソルがあった位置が枠で囲まれています。
移動するカーソルは点滅しないカーソルです。

取り込み動作中はマウスカーソルが一時的に消えます(終了時に戻ります)。

カーソルは自由に動きますが、全角文字を読み取るには、全角文字の左半分の位置へ
カーソルをもって行きスペースを押します。読み取れない場合にはベルがなります。
読み取れた場合カーソルは文字サイズ分、読み取れてない場合は半角1文字分移動します。

取り込んだ文字はキーボードバッファーに格納されます。
バッファーがフルで書き込めない場合にはベルがなります。

KSDが活動状態の場合は、読み取った文字は終了後すぐにキー入力されます。
一時停止状態の時は、SHIFT+登録でキー入力(ペースト)されます。
(くわしくはKSD.docも参照のこと。)

┌───────────────────────────────────┐
│操作キー                                                              │
└───────────────────────────────────┘

●起動/終了
  Opt.1+TAB   起動/終了

  CR/ENTER    終了

  ESC         取り込んだ文字をキャンセルして終了
                キーバッファーが消えます。GMOJI起動以前に入っていたものも
                消えるので注意してください。

●カーソル移動
  ↑↓←→    カーソル移動
                カーソルは(0,0)からコンソールの範囲最後(type等をして表示される
                範囲)でしか動けません。画面モードは全てのモードに対応しているはずです。

  CTRL+←     カーソル左端移動
  CTRL+→     カーソル右端移動
  TAB/SHIFT+→カーソル+8移動

  HOME        画面左上(0,0)に移動します
  DEL         画面右下に移動します
  UNDO        カーソルを最初の位置に戻します

●文字読みとり時
  スペース    1文字読み込み

  CTRL+スペース
                単語一気読み込み
                最初のカーソル位置にある文字と同類の一連の文字群を単語として読み取ります。
                区切り文字がある/読み取れない文字がある等の場合、そこで読み取りを中断します。
                
                次の文字が区切り文字となっています。
                半角    ,;:()。、・"' 半角スペース
                全角    。、,

                「例」各矢印の位置にカーソルがある場合の読み取り文字
                  ↓「です」
                単語です 次の文字 X68
                ↑         ↑「X68」
                ↑「単語」

  OPT.1+スペース
                全画面一気ファイル書き出し
                現在の画面サイズに合わせて、テキスト画面全体を読み取って
                テキストファイルに出力します。
                この機能は実行時間が少しかかります(最大数十秒。画面上に多い
                文字の種類によって変わります。この速度はGMDに依存しています)。
                書き出しが終了すると、ベルがなり、自動的にGMojiを終了します。
                
                ファイル名はカレントディレクトリに"Gamen.gmd"で固定で、
                常に追加モードで書き出されます。各行の行末には改行がCR+LFで入ります。
                EOF(0x1a)は付きません。また、読み取れなかった文字はスペースになります。
                画面右側がスペースのみの時もそれを出力します(ファイルを見れば解るでしょう)。
                それを削除したい時はsed等で処理してください。
                        sed "s/[ ]*$//g" Gamen.gmd > gamen
                何等かの理由でファイルが書き出せない時は(直ぐ)ベルがなり、
                ファイル書き出しがされません。

                キーバッファーは利用しませんので、この機能を使っても
                それまでに取り込んでいた文字には影響ありません。

●その他
  SHIFT+CLR   キーバッファークリア
                それまで取り込んだものを消します。
                GMOJI起動以前に入っていたものも消えるので注意してください。

  F1          読み取りモード変更(普通<->半角)
                通常は読み取った文字そのものをキーバッファーに格納しますが、
                半角読み取りモードにすると、全角文字で半角に出来るものは半角に、
                出来ないものは消します(V1.2以降では1/2,1/4角文字は変換しません)。
                            ‾‾‾‾‾‾‾‾
                これは主に、ASKの変換ラインへ読みを入れるために用意しています。
                いわゆる「再変換」です。
                
                モードの区別は、元のカーソル位置に出る反転枠のサイズで行います。
                (HIOCS常駐時にはカーソルそのものの大きさも変わります。)
                縦長なら普通モード、小さ目なら半角モードです。

                Opt.1+TABで起動した直後に押し、モード変更してから読み取って下さい。
                通常起動時は、普通モードで立ち上がります。
                また、ASKのON時は自動的に半角読み取りモードになります。
                ASKはONだが普通に読み取りたいときは、F1を押して普通モード
                に変更する必要があります。

  F5          反転文字読み取りモード変更
                初期はGMD起動時(/Oオプション)に設定した反転文字読み取りモードに
                従いますが、以後、読み取りのOn/Offを変更したい時に使います。
                GMD V1.4以降が常駐している時のみ有効です。
                (それ以前の時は、押しても無効になるだけ。)
                ここでの設定は、以後のGMDの反転文字読み取りモードにも影響します。
                (GMojiを終了しても設定したモードがそのままになる。)
                モードを識別する方法はありません(手抜き)。読み取らせて読めたら
                On、読めなかったらOffです。

                反転文字読み取りには時間がかかりますし、
                本当に読めない文字の判定までの時間は倍かかるようになります。
                X68030では気にならないですが、他の機種では気になるかも知れません。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      仕様    "わかっているバグは「仕様」としてしまえばよい"              ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

(1)仮名漢字変換ラインへのペーストも理論上は可能です。が、読み入力状態=変換前や
単語登録の読み入力時は、キー入力から全角文字を受け取りません。
キーコードは常に半角1文字であるとし、これを全角に変換しようとするために、全角文字のコード
を返すと文字が化けます。従って、この時点での変換ラインへの入力は半角文字に限ります。

読み入力時
  全角文字コード        ->      化ける(実用不可)
  半角かたかな          ->      そのまま入る(全角/ひらがなキーによって変化)
                                ローマ字モードでも有効
  半角アルファベット    ->      ローマ字モードならローマ字変換される
                                仮名モードならそのまま入る(全角キーによって変化)

GmojiではASKのON/OFFを自動判定して、仮名/英数字など半角に出来る
文字は半角化するようになっています。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      テストしたソフト                                                    ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

以下のソフトで、一応の取り込み動作テストをしています。
ただし、ちょっとやってみただけであり、その上での動作を(すべての場面に於いて)
保証するものではありません。

LOQUAT.Rのように、DicTKとは「なぜか?」違った結果のものもあります。

-------------------------------------------------------------------------------
結果    ソフト名        バージョン      作者            補足
-------------------------------------------------------------------------------
エディター系
○      SuperED.X       v1.18           T.Nishikawa
○      ED.R            v0.99XD         S.Ueda
○      MY.X            v1.16           JOJO
○      EDT.X           V1.55           いろもの物理学者
○      FES.X           V1.26a          ずうやん        ペースト可能なのはASC入力時のみ
○      NG68.X          V1.3.1          M.Suzuki
×      NG12.X          V1.3.1          M.Suzuki        12dotフォント
○      MicroEMACS      v3.10 J1.43(rel.3-)             独自カーソルのため、その下の文字は読取れない
                                        lika/SALT/PEACE/SHUNA/rima

ビューワー系
○      LOQUAT.R        v1.00以降       TAMA.           文字列検索枠内から
○      MSV             V0.84           SaTa.           文字列検索枠内から

システム系
○      COMMAND.X       V3.00           SHARP/Hudson
○      X-BASIC         V2.02           SHARP/Hudson
×      SCD.X           v3.00           SHARP/Hudson    画面が特殊
○      ASK68K.SYS      V3.02           SHARP/Access    自動判別
○      codeA.SYS       V0.07++         FDS             自動判別

ファイラー
×      WS            V0.90           Fuchi           フォント位置がテキストでない

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      お約束                                                              ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

(1)無料ネットへの転載は自由ですが、Q2を含む有料ネットへの転載は禁止します。
   各種メディアによる販売は個人/企業を問わず「禁止」です。
   また、ホームページへの掲載も「必ず事前に」ご連絡下さい。

(2)このプログラムは無保証です。これによって発生したいかなる問題にも
   当方はいっさい責任を負いません。

動かない・動作がおかしいと思う時は、LeDAまでお知らせ下さい。
また、こうした方が良い等のいろいろな御意見・御感想もお待ちしております。

これが、皆さんに、長く使っていただけるツールであることと、
このプログラムを使う、X68現役ユーザーが多いことを祈りながら・・・。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃      連絡先                                                              ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

        満開ネット      MKSX0424
        E-Mail          LeDA@osaka.email.ne.jp

上記ならよく連絡が付きますが、まれにしばらく通信出来なくなることがありますので、
気長にお待ち下さい。

                                LeDA